草庐IT

jQuery Mobile 事件

全部标签

javascript - jQuery 按键事件在按住键时重复触发 - 但不是在所有键上

这可能是预期的行为,或者至少不是jQuery/js问题,但如果有任何问题,我想澄清一下。采取以下措施:$(document).bind('keypress',function(e){switch(e.keyCode){case37:console.log('leftcursorkeydown,willfireonhold');break;case39:console.log('rightcursorkeydown,willfireonhold');break;case80:console.log('pwillonlyfireonceperpress!');break;}});您还可以使

javascript - 使用 Jquery 允许常规 JS 对象上的事件

我有一些javaScript类(ctor+prototype方法),我希望它们的实例能够发出evnet。这样使用这个类的代码就可以像这样:varinstance=newSomeObject();instance.on('customEventName',function(event){do_stuff()}我在JQUery环境中工作,对于我使用的.trigger和.on的UI元素,这对我来说非常有用,我一直在徘徊什么是实现与常规对象相同的感觉的最佳方式。我正在考虑根据自定义事件名称设置$.Callbacks()对象的映射,并根据对象的原型(prototype)添加.on和.trigge

javascript - 在剪切事件期间获取文本框的值

我已将剪切事件(jquery)捕获在文本框上。我想要的是在触发剪切事件期间获取文本框上的文本。我尝试访问用户通过evt.originalEvent.clipboardData.getData('text')剪切的数据,但返回未定义。我的目标是了解用户是否剪切了所有文本(文本框现在为空)。提前致谢 最佳答案 您可以setTimeout将持续时间设置为0,这会安排一个函数立即执行。好的是一旦文本已经被剪切,函数就会执行,所以你可以检查你的文本区域是否为空(这意味着用户已经剪切了所有文本):varta=$('#YOUR_TEXTAREA'

javascript - 显示、隐藏,然后重新显示布局中断事件

在显示、隐藏和重新显示Marionette布局时遇到问题。我相信这个问题也适用于常规的BackboneViews和MarionetteItemViews。总而言之,我有一个父View。初始化时,它会创建两个子布局,用作选项卡内容。问题是,当显示一个选项卡的选项卡内容时,会显示另一个选项卡的内容,当再次显示原始选项卡内容时,事件不再起作用。子布局在父布局的initialize函数中创建并重新使用,因为当导航移回它们时需要保留它们的状态。这是一个sampleapplication这证明了我在说什么:这是一个显示损坏事件的视频:VideoLink非常感谢! 最佳答

javascript - 将事件处理程序添加到类中的每个元素

我正在尝试向所有具有section类的元素添加事件监听器,但它仅将其应用于节点列表中的最后一个对象。varsection=document.querySelectorAll('.section');for(vari=0;i有没有办法为每个事件添加事件监听器? 最佳答案 问题在于JavaScript中没有block作用域。所以elem每次迭代都会被覆盖,而不是每次都被声明为一个新变量。在每次迭代中声明新变量的唯一方法是通过函数:for(vari=0;i但是addEventListener将this设置为元素,因此在您的情况下您可以巧妙

javascript - MarkerWithLabel - 拖动事件像点击事件一样工作

我在map上点击设置了一个标记。我使用MarkerWithLabel。我使用可拖动标记。如果我拖动一个标记,它会正常工作。但是,如果我拖动标签,它会与map上的点击事件一起使用。如何使用标签并在没有点击事件的情况下拖动标签?在我的示例中-当我拖动标记时,JS会创建新标记。google.maps.event.addListener(map,'click',function(event){addMarker(event.latLng)});functionaddMarker(latLng){varmarker=newMarkerWithLabel({position:latLng,map:

javascript - Angularjs:捕获浏览器中的刷新事件

在angularjs中可以处理用户点击浏览器上的刷新按钮吗?框架有没有暴露给开发者的方法?谢谢 最佳答案 要处理重新加载本身(包括按F5)并在重新加载甚至取消之前采取行动,请使用“beforeunload”事件。varwindowElement=angular.element($window);windowElement.on('beforeunload',function(event){//DoSomething//Afterthiswillpreventreloadornavigatingaway.event.preventDe

javascript - D3 事件在隐藏的 svg 元素上触发

我似乎找不到这个问题的答案,我花了一段时间将它重新创建为一个独立的fiddle/笔,但我终于找到了。我正在开发使用D3绘制和操作svg图形的Vaadin应用程序。在某一点上,屏幕上有svg,它具有visibility:hidden。这在所有浏览器中都能完美地找到。这些隐藏元素有点击和鼠标悬停事件,在所有浏览器中都能找到但是在firefox版本34中,隐藏元素仍然会在它们仍然隐藏时触发它们的事件(单击和鼠标悬停)。为了更好地解释:当一个按钮被隐藏时,它的鼠标悬停事件不应该触发,当它可见时应该触发。这就是它在所有浏览器中的工作方式,除了firefox34、35beta和36开发版。它在Fi

javascript - RxJS:我怎样才能使用 event.preventDefault() 来处理掉落事件?

我的标记:Dropfilehere...我的代码:vardropTarget=document.getElementById('drop-target');Rx.Observable.fromEvent(dropTarget,'dragover').subscribe(function(event){event.preventDefault();});vardropStream=Rx.Observable.fromEvent(dropTarget,'drop');dropStream.subscribe(function(event){console.log('Thiswillbeca

javascript - 在 Angular 中检测鼠标+键盘事件以进行 ng-repeat

我有一个应用程序,我在其中使用ng-repeat生成一组跨度,每个跨度都有一个唯一的ID(比方说span-{{$index}})。现在我想执行以下操作:如果我单击一个跨度,我希望复制该跨度的ID。我设法通过ng-click做到了这一点。我想进一步扩展此功能以检测多次点击,以获取所选ID的数组,但仅如果在点击期间按住CTRL键.例如。如果我在选择id为1,3,5,7的跨度时单击了ctrl按钮,我的数组应该有[1,3,5,7],但如果我没有按下CTRL键,那么我应该只有[7],因为它是最后选择的跨度。还有,我可以绑定(bind)相关事件吗?例如。如果我选择id为1的跨度,如果我单击CTRL